<template>
  <!-- 主体部分 -->
    <section class="main">
      <input v-model="isAll" id="toggle-all" class="toggle-all" type="checkbox" />
      <label for="toggle-all">Mark all as complete</label>
      <ul class="todo-list">
        <!-- 当任务已完成，可以给 li 加上 completed 类，会让元素加上删除线 -->
        <li v-for="item in list" :key="item.id" :class="{completed: item.isDone}">
          <div class="view">
            <input @change="hChange(item.id)" class="toggle" type="checkbox" :checked="item.isDone" />
            <label>{{item.name}}</label>
            <button @click="hDel(item.id)" class="destroy"></button>
          </div>
        </li>
      </ul>
    </section>

</template>
<script>
export default {
  props: {
    list:{
      type:Array,
      required:true
    }
  },


 methods:{
  //删除的事件处理函数
  hDel(id){
    this.$emit('delTask',id)
  },
   hChange(id) {
      this.$emit('changeState', id)
    }
 },
 computed: {
  isAll:{
    set(val){
      this.$emit('changeAll',val)
    },
    get(){
      //必须有返回值
      //返回的结果要根据list数据的isdone来决定
      return this.list.every(item=>item.isDone)

    }
  }
 },
 
}
</script>
<style>

</style>
